#include"hash.h"

int main()
{
    HashTable* hash = InitHashtable(10);
    Element ee;
    // 插入数据元素，关键字从10到20。
    ee.key=10; ee.val=110; Insert(hash,&ee);
    ee.key=11; ee.val=111; Insert(hash,&ee);
    ee.key=12; ee.val=112; Insert(hash,&ee);
    ee.key=13; ee.val=113; Insert(hash,&ee);
    ee.key=14; ee.val=114; Insert(hash,&ee);
    ee.key=15; ee.val=115; Insert(hash,&ee);
    ee.key=16; ee.val=116; Insert(hash,&ee);
    ee.key=17; ee.val=117; Insert(hash,&ee);
    ee.key=18; ee.val=118; Insert(hash,&ee);
    ee.key=19; ee.val=119; Insert(hash,&ee);

    // 插入数据元素，关键字从20到30。
    ee.key=20; ee.val=120; Insert(hash,&ee);
    ee.key=21; ee.val=121; Insert(hash,&ee);
    ee.key=22; ee.val=122; Insert(hash,&ee);
    ee.key=23; ee.val=123; Insert(hash,&ee);
    ee.key=24; ee.val=124; Insert(hash,&ee);
    ee.key=25; ee.val=125; Insert(hash,&ee);
    ee.key=26; ee.val=126; Insert(hash,&ee);
    ee.key=27; ee.val=127; Insert(hash,&ee);
    ee.key=28; ee.val=128; Insert(hash,&ee);
    ee.key=29; ee.val=129; Insert(hash,&ee);

    // 插入数据元素，关键字从30到32。
    ee.key=30; ee.val=130; Insert(hash,&ee);
    ee.key=31; ee.val=131; Insert(hash,&ee);
    ee.key=32; ee.val=132; Insert(hash,&ee);

    printf("count=%d\n",hash->count);  
    // 打印哈希表 
    Display(hash);  
    // 删除哈希表中关键字为12的数据元素。
    DeleteNode(hash,12);  
    printf("\n");   

    printf("count=%d\n",hash->count);  
    // 打印哈希表 
    Display(hash);  

    //添加已有元素
    ee.key=26; ee.val=126; Insert(hash,&ee);

    // 在哈希表中查找关键字18。
    Node *pp=Lookup(hash,18);
    if (pp==0) printf("LookUp(18) failed.\n");
    else printf("key=18,value=%d.\n",pp->elem.val);  

    DistroyHash(&hash);
    if(hash == NULL) printf("1");
    Display(hash);
    return 0;
}